package com.yixun.qfbao.request.login;

import java.util.List;

import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;

import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotBlank;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @author zilong.liu
 * @date 2020-8-3
 * @desc
 *		注册数据请求封装实体类
 */
@Data
public class RegistReqDto {

	 /**
     * 用户名
     */
	@ApiModelProperty(value = "用户名")
	@Length(min = 1, max = 20, message = "用户名必须为1-20位字符")
    private String accountName;
    
    /**
     * 手机号
     */
	@ApiModelProperty(value = "手机号")
	@Pattern(regexp = "^\\d{11}$", message = "手机号码必须为11位数字")
    private String phone;
    
    /**
     * 短信验证码
     */
	@ApiModelProperty(value = "验证码")
	@Pattern(regexp = "^\\d{6}$", message = "验证码必须为6位数字")
    private String verificationCode;
    
    /**
     * 公司代码
     */
	@ApiModelProperty(value = "公司编码")
	@NotBlank(message = "公司编码不能为空")
    private String companyCode;

    /**
     * 所属门店
     */
	@ApiModelProperty(value = "门面ID")
    private String storeId;
    
    /**
     * 所属组别
     */
	@ApiModelProperty(value = "组别ID")
    private String groupId;
	
	@ApiModelProperty(value = "模板集合")
	private List<ModelReqDto> modelReqDtoList;

    /**
     * 密码
     */
	@ApiModelProperty(value = "密码")
	@Size(min = 6, max = 20, message = "密码必须为6-20位")
    private String pwd;
	
	/**
	 * 注册二维码来源ID
	 */
	@ApiModelProperty(value = "注册二维码来源ID")
	private Long qrcodeOriginPartnerId;
	
	@ApiModelProperty(value = "jsCode,用于获取小程序的openId，然后关注时进行反向更新")
	private String jsCode;

}
